using System;

namespace B.S.Data.MES.API.Dto.InvoiceDTO
{
    /// <summary>
    /// 销售发票明细数据传输对象
    /// 用于前端展示和数据传输发票的商品明细信息
    /// </summary>
    public class SalesInvoiceDetailDTO
    {
        /// <summary>
        /// 明细主键ID
        /// </summary>
        public int DetailId { get; set; }

        /// <summary>
        /// 发票ID
        /// 外键，关联到销售发票主表
        /// </summary>
        public int InvoiceId { get; set; }

        /// <summary>
        /// 商品名称
        /// 发票明细中的商品名称
        /// </summary>
        public string ProductName { get; set; }

        /// <summary>
        /// 商品编号
        /// 商品的唯一标识符
        /// </summary>
        public string ProductCode { get; set; }

        /// <summary>
        /// 规格型号
        /// 商品的规格和型号
        /// </summary>
        public string Specifications { get; set; }

        /// <summary>
        /// 单位
        /// 商品的计量单位
        /// </summary>
        public string Unit { get; set; }

        /// <summary>
        /// 数量
        /// 商品的数量
        /// </summary>
        public decimal Quantity { get; set; }

        /// <summary>
        /// 单价
        /// 商品的不含税单价
        /// </summary>
        public decimal UnitPrice { get; set; }

        /// <summary>
        /// 金额
        /// 商品的不含税金额（单价 * 数量）
        /// </summary>
        public decimal Amount { get; set; }

        /// <summary>
        /// 税率
        /// 商品适用的税率
        /// </summary>
        public decimal TaxRate { get; set; }

        /// <summary>
        /// 税额
        /// 商品包含的税额
        /// </summary>
        public decimal TaxAmount { get; set; }

        /// <summary>
        /// 备注
        /// 商品明细的备注信息
        /// </summary>
        public string Remarks { get; set; }
    }
}